cmake_minimum_required(VERSION 3.10)

set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED true)
add_compile_options(-g)


project(ProjectManager)
find_package(pugixml REQUIRED)
find_package(fmt REQUIRED)
find_package(Boost REQUIRED)
aux_source_directory(src SOURCE_DIR)

#添加主项目
add_executable(ProjectManager ${SOURCE_DIR} run/main.cpp)
target_link_libraries(ProjectManager PUBLIC pugixml::pugixml fmt::fmt rt boost_program_options)

#添加测试文件
add_executable(ProjectManager_test ${SOURCE_DIR} test/projectConfig_test.cpp)
target_link_libraries(ProjectManager_test PUBLIC pugixml fmt rt)

add_executable(fileControl_test ${SOURCE_DIR} test/fileControl_test.cpp)
target_link_libraries(fileControl_test PUBLIC pugixml fmt rt)

add_executable(transfer_test ${SOURCE_DIR} test/Transfer_test.cpp)
target_link_libraries(transfer_test PUBLIC pugixml fmt rt)

add_executable(ProjectManager_client test/ProjectManager_client.cpp)
target_link_libraries(ProjectManager_client PUBLIC rt)
